Revert "fix of auto spanification for libfuzzer" This reverts commit cdd3e5c2638fc268ced4d11334133cc85e108b48. Reason for revert: Adding a //base dependency in //testing breaks downstream projects (that can't use //base) Original change's description: > fix of auto spanification for libfuzzer > > spanification: automatically spanify testing/libfuzzer/unittest_main.cc > etc. > > This is the result of running the automatic spanification on linux and > updating code to use and pass spans where size is known. > > The original patch was fully automated using script: > //tools/clang/spanify/rewrite-multiple-platforms.sh -platforms=linux > Then refined with gemini-cli > > gemini-run/batch-run-1761116551/group_104 > > BUG=439964610 > > Change-Id: I30ba2b835150041d2e8ce36eb3ef5a18d41a84d7 > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7138958 > Reviewed-by: Stephen Nusko <nuskos@chromium.org> > Auto-Submit: Daniel Angulo <angdaniel@google.com> > Commit-Queue: Daniel Angulo <angdaniel@google.com> > Reviewed-by: Ali Hijazi <ahijazi@chromium.org> > Cr-Commit-Position: refs/heads/main@{#1544501} Bug: 439964610 No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: I5f39b7a046a0e00d5e351460e659d764d438dddf Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7156575 Commit-Queue: Jeremy Leconte <jleconte@google.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Titouan Rigoudy <titouan@chromium.org> Cr-Commit-Position: refs/heads/main@{#1544806} NOKEYCHECK=True GitOrigin-RevId: b54a82bfa3d0b4766d5bf0a52de93838c268ada3 
diff --git a/BUILD.gn b/BUILD.gn index f5f59ac..0dc8b79 100644 --- a/BUILD.gn +++ b/BUILD.gn 
@@ -52,7 +52,6 @@  ]  } else {  sources += [ "unittest_main.cc" ] - deps += [ "//base" ]  }  }   
diff --git a/unittest_main.cc b/unittest_main.cc index 4f23335..cf92a42 100644 --- a/unittest_main.cc +++ b/unittest_main.cc 
@@ -2,8 +2,10 @@  // Use of this source code is governed by a BSD-style license that can be  // found in the LICENSE file.   -#include "base/containers/span.h" -#include "base/numerics/safe_conversions.h" +#ifdef UNSAFE_BUFFERS_BUILD +// TODO(crbug.com/351564777): Remove this and convert code to safer constructs. +#pragma allow_unsafe_buffers +#endif    // A simple unit-test style driver for libfuzzer tests.  // Usage: <fuzzer_test> <file>... @@ -18,30 +20,28 @@    // Libfuzzer API.  extern "C" { -// User function. -int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size); -// Initialization function. -__attribute__((weak)) int LLVMFuzzerInitialize(int* argc, char*** argv); -// Mutation function provided by libFuzzer. -size_t LLVMFuzzerMutate(uint8_t* Data, size_t Size, size_t MaxSize); + // User function. + int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size); + // Initialization function. + __attribute__((weak)) int LLVMFuzzerInitialize(int *argc, char ***argv); + // Mutation function provided by libFuzzer. + size_t LLVMFuzzerMutate(uint8_t *Data, size_t Size, size_t MaxSize);  }    std::vector<uint8_t> readFile(std::string path) {  std::ifstream in(path);  return std::vector<uint8_t>((std::istreambuf_iterator<char>(in)), - std::istreambuf_iterator<char>()); + std::istreambuf_iterator<char>());  }   -size_t LLVMFuzzerMutate(uint8_t* Data, size_t Size, size_t MaxSize) { +size_t LLVMFuzzerMutate(uint8_t *Data, size_t Size, size_t MaxSize) {  return 0;  }   -int main(int argc, char** argv) { - base::span<char*> args = - UNSAFE_BUFFERS(base::span(argv, base::checked_cast<size_t>(argc))); - if (args.size() == 1) { +int main(int argc, char **argv) { + if (argc == 1) {  std::cerr - << "Usage: " << args[0] + << "Usage: " << argv[0]  << " <file>...\n"  "\n"  "Alternatively, try building this target with " @@ -53,13 +53,12 @@  exit(1);  }   - if (LLVMFuzzerInitialize) { + if (LLVMFuzzerInitialize)  LLVMFuzzerInitialize(&argc, &argv); - }   - for (char* arg : args) { - std::cout << arg << std::endl; - auto v = readFile(arg); + for (int i = 1; i < argc; ++i) { + std::cout << argv[i] << std::endl; + auto v = readFile(argv[i]);  LLVMFuzzerTestOneInput(v.data(), v.size());  }  }